Automatic defect classification (ADC) reclassification engine

ABSTRACT

A method of determining classification codes for defects occurring in semiconductor manufacturing processes and for storing the information used to determine the classification codes. A wafer is selected from a production lot after the lot is sent through a first manufacturing process. The selected wafer is scanned to determine if there are defects on the wafer. Images of selected defects are examined and a numerical value is assigned to each of N elemental descriptor terms describing each defect. A classification code is determined for each defect based upon the numerical values assigned to the N elemental descriptor terms. The classification code and numerical values assigned to the N elemental descriptor terms are stored in a database. The wafer is sent through each sequential process and classification codes are assigned to additional defects selected after each sequential process. The classification codes and numerical values assigned to the N elemental descriptor terms for the additional selected defects are stored in the database. The stored numerical values assigned to the N elemental descriptor terms to modify the classification code. All of the defects stored in the database are assigned new classification codes in accordance with the modified classification code. A new classification code can be generated and all of the stored defects are assigned new classification codes in accordance with the new database.

CROSS REFERENCE TO RELATED APPLICATION

This application is related to U.S. application Ser. No. 08/896,340,U.S. Pat. No. 5,862,055, filed on the filing date of this application,entitled AUTOMATIC DEFECT CLASSIFICATION INDIVIDUAL DEFECT PREDICATEVALUE RETENTION AND USAGE.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates generally to a defect classification methodologyin a semiconductor manufacturing testing system and more specifically,to an automatic defect classification methodology that storesinformation concerning individual defects and uses the storedinformation to provide new classification codes that are assigned todefects.

2. Discussion of the Related Art

In order to remain competitive, a semiconductor manufacturer mustcontinuously increase the performance of the semiconductor integratedcircuits being manufactured and at the same time, reduce the cost of thesemiconductor integrated circuits. Part of the increase in performanceand the reduction in cost of the semiconductor integrated circuits isaccomplished by shrinking the device dimensions and by increasing thenumber of circuits per unit area on an integrated circuit chip. Anotherpart of reducing the cost of a semiconductor chip is to increase theyield. As is known in the semiconductor manufacturing art, the yield ofchips (also known as die) from each wafer is not 100% because of defectsduring the manufacturing process. The number of good chips obtained froma wafer determines the yield. As can be appreciated, chips that must bediscarded because of a defect increases the cost of the remaining usablechips.

A single semiconductor chip can require numerous process steps such asoxidation, etching, metallization and wet chemical cleaning. Some ofthese process steps involve placing the wafer on which the semiconductorchips are being manufactured into different tools during themanufacturing process. The optimization of each of these process stepsrequires an understanding of a variety of chemical reactions andphysical processes in order to produce high performance, high yieldcircuits. The ability to view and characterize the surface and interfacelayers of a semiconductor chip in terms of their morphology, chemicalcomposition and distribution is an invaluable aid to those involved inresearch and development, process, problem solving, and failure analysisof integrated circuits. A major part of the analysis process is todetermine if defects are caused by one of the process tools, and if so,which tool caused the defects.

As the wafer is placed into different tools during manufacture, each ofthe tools can produce different types of particles that drop onto thewafer and cause defects that have the potential to decrease the yield.In order to develop high yield semiconductor processes and to improveexisting ones, it is important to identify the sources of the variousparticles that cause defects and then to prevent the tools from droppingthese particles onto the wafer while the wafers are in the tools.

In order to be able to quickly resolve process or equipment issues inthe manufacture of semiconductor products, a great deal of time, effortand money is being expended by semiconductor manufacturers to captureand classify silicon based defects. Once a defect is caught and properlydescribed and classified, work can begin to resolve the cause of thedefect and to eliminate the cause of the defect. The biggest problemfacing the semiconductor manufacturers and the most difficult problem tosolve, is the training and maintenance of a cadre of calibrated humaninspectors who can classify all defects consistently and without error.Because of human inconsistency, Automatic Defect Classification (ADC)systems were developed.

One such system for automatically classifying defects consists of thefollowing methodological sequence. Gather a defect image from a reviewstation. View the defect image and assign values to elemental descriptorterms called predicates that are general descriptors such as roundness,brightness, color, hue, graininess, etc. Assign a classification code tothe defect based upon the values of all the predicates. A typical ADCsystem can have 40 or more quantifiable qualities and properties thatcan be predicates. Each predicate can have a specified range of valuesand a typical predicate can have a value assigned to it between 1 and256. A value of 1 indicates that none of the value is present and avalue of 256 indicates that the quality represented by the predicate isideal. For example, a straight line would have a value of 1 for thepredicate indicating roundness, whereas a perfect circle would have avalue of 256 for the same predicate. The classification code for eachdefect is determined by the system from the combination of all thepredicate values assigned to the defect. The goal of the ADC system isto be able to uniquely describe all the defect types, in such a mannerthat a single classification code can be assigned to a defect which hasbeen differentiated from all other defect types. This is accomplished bya system administrator who trains an artificial intelligence system torecognize various combinations and permutations of the 40 or morepredicates to assign the same classification code to the same type ofdefect. This would result in a highly significant statistical confidencein the probability that the defect, and all other defects of the sametype or class, will always be assigned the same classification code bythe ADC system. This is done by performing a "best-fit" calculationagainst all assigned classification codes. If the fit is not goodenough, the system will assign an "unknown" code, which means the systemneeds further training for that device/layer/defect. Once theclassification code for a particular defect is determined and assignedthe predicate values that pertain to that defect and which were used todetermine the classification code are not saved. The only value saved inthe database is the classification code and, is some cases, the image ofthe defect. Because there the predicate values are not saved, there isno method available to automatically correct or reclassify defects oncethey have been stored in the database. At the present, theclassifications would have to be edited manually by reviewing each andevery defect for which an image was retained (those with no stored imagecould not be corrected) and assigning the proper value. Alternatively,the wafer would have to be reloaded and the Automatic DefectClassification procedure repeated. This procedure would be appropriateonly for the defects at the current process layer for that wafer. Thislimitation causes known erroneous data to be retained in the databasewhich may then be used by other process/yield models or simulators topredict information such as yield or wafer starts needed.

However, if the classification code needs to be modified to furtherdifferentiate between defects, none of the existing defects can bereclassified because none of the information necessary to determine newclassification codes is available.

Therefore, what is needed is a system in which the information is storedand which reviews all defects in the database using the storedinformation and reclassifies the defects to the new classificationcodes.

SUMMARY OF THE INVENTION

The present invention is directed to a method of determiningclassification codes for defects occurring in semiconductormanufacturing processes and for storing the information used todetermine the classification code. A wafer is selected from a productionlot after the lot is sent through a first manufacturing process. Theselected wafer is scanned to determine if there are defects on thewafer. Images of selected defects are examined and a numerical value isassigned to each of N elemental descriptor terms describing each defect.A classification code is determined for each defect based upon thenumerical values assigned to the N elemental descriptor terms. Theclassification code and numerical values assigned to the N elementaldescriptor terms are stored in a database.

The wafer is sent through each sequential process and classificationcodes are assigned to addition defects selected after each sequentialprocess. The classification codes and numerical values assigned to the Nelemental descriptor terms for the additional selected defects arestored in the database.

The stored numerical values assigned to the N elemental descriptor termsto modify the classification code. All of the defects stored in thedatabase are assigned new classification codes in accordance with themodified classification code.

A new classification code can be generated and all of the stored defectsare assigned new classification codes in accordance with the newdetabase.

The present invention is better understood upon consideration of thedetailed description below, in conjunction with the accompanyingdrawings. As will become readily apparent to those skilled in the artfrom the following description, there is shown and described anembodiment of this invention simply by way of illustration of the bestmode to carry out the invention. As will be realized, the invention iscapable of other embodiments and its several details are capable ofmodifications in various obvious aspects, all without departing from thescope of the invention. Accordingly, the drawings and detaileddescription will be regarded as illustrative in nature and not asrestrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features believed characteristic of the invention are setforth in the appended claims. The invention itself, however, as well asa preferred mode of use, and further objects and advantages thereof,will best be understood by reference to the following detaileddescription of an illustrative embodiments when read in conjunction withthe accompanying drawings, wherein:

FIG. 1 is a flow diagram describing the movement of a selected waferthrough all the processes in the manufacture of semiconductor devices.

FIG. 2 is a flow diagram describing how a prior art automatic defectclassification system determines and stores classification codes fordefects.

FIG. 3 is a flow diagram describing how an automatic defectclassification system according to the present invention determines andstores classification codes for defects.

FIG. 4 is a flow diagram showing how the ADC reclassification system inaccordance with the present invention relates to the relationaldatabase.

DETAILED DESCRIPTION

Reference is now made in detail to a specific embodiment of the presentinvention which illustrate the best mode presently contemplated by theinventors for practicing the invention.

FIG. 1 is a flow diagram describing the movement of a selected waferthrough all the processes in the manufacturing of semiconductor devices.As is known in the semiconductor manufacturing art, a production lot ofwafers can be any selected number of wafers. As is also known in thesemiconductor manufacturing art, it is not practical to scan each fordefects. Therefore, one wafer is selected from each production lot. Thiswafer is scanned for defects after each separate manufacturing process.The selection of a wafer is indicated at 100. All wafers in theproduction are sent through the first manufacturing process 102. Afterthe first process is complete, the selected wafer is examined fordefects at 104. The defect management system selects a selected numberof the total defects to review at 106. As is known in the semiconductormanufacturing art, the total number of defects on a wafer could belarger than can be practically examined. For this reason, only aselected number of defects are selected for review. The selected defectsare reviewed at 108 and the review information is sent to the AutomaticDefect Classification at 110. The production lot is cycled to the nextprocess as indicated at 112 and 114. The selected wafer is examinedafter each sequential process is completed. After the last process iscomplete, the overall manufacturing process is complete as indicated at116.

FIG. 2 is a detailed view of the process of assigning classificationcodes to defects as done in a typical prior art system. The selectedwafer is scanned to determine if there are defects, indicated at 200.The position of each defect is recorded, as indicated at 202, so thatthe defect can be viewed by another tool such as an imaging tool. Asdiscussed above, the number of defects on the selected wafer may be toolarge to allow each defect to be examined. For this reason, a givennumber of defects are selected for further review. An image is made ofeach selected defect and the images of the selected defects areexamined, indicated at 204. Each image has particular quantifiablequalities and properties that can be specified by elemental descriptorterms called predicates. These predicates are general descriptors suchas roundness, brightness, color, hue, graininess, etc. There are Nnumber of predicates and N can be 40-60 or more. Each predicate can beassigned a value from a range of values, as indicated at 206. A typicalsystem can have values that can be assigned each predicate that rangefrom 1 to 256. Other ranges are possible. If the range is from 1 to 256,a value of 1 means that none of the quality is present and a value of256 means that the quality is ideal. For example, a line would have anassigned value of 1 for the quality of roundness, whereas a circle wouldhave an assigned value of 256. The predicates are used in combination touniquely describe defect types, in such a manner that a singleclassification code can be assigned to a defect that has differentiatedfrom all other defect types. The classification codes are assigned by anartificial intelligence system that has been programmed by the systemadministrator or engineer, as indicated at 208. Various combinations andpermutations of the N number of predicates are programmed to give ahighly significant statistical confidence that the probability that thedefect, and all other defects of the same type or class, will beassigned the same classification code. This is done by performing abest-fit calculation against all assigned classification codes. If thefit does not meet a pre-assigned quality standard, an "unknown" codewill be assigned, which means that the system needs further training forthat particular type of defect. The prior art system shown in FIG. 2stores the classification code for each defect and discards all of thepredicate values.

FIG. 3 is a detailed view of the process of assigning classificationcodes to defects as done in accordance with the present invention. Theselected wafer is scanned to determine if there are defects, indicatedat 300. The position of each defect is recorded, as indicated at 302, sothat the defect can be viewed by another tool such as an imaging tool.As discussed above, the number of defects on the selected wafer may betoo large to allow each defect to be examined. For this reason, a givennumber of defects are selected for further review. An image is made ofeach selected defect and the images of the selected defects areexamined, indicated at 304. Each image has particular quantifiablequalities and properties that can be specified by elemental descriptorterms called predicates. These predicates are general descriptors suchas roundness, brightness, color, hue, graininess, etc. There are Nnumber of predicates and N can be 40-60 or more. Each predicate can beassigned a value from a range of values, as indicated at 306. A typicalsystem can have values that can be assigned each predicate that rangefrom 1 to 256. Other ranges are possible. If the range is from 1 to 256,a value of 1 means that none of the quality is present and a value of256 means that the quality is ideal. For example, a line would have anassigned value of 1 for the quality of roundness, whereas a circle wouldhave an assigned value of 256. The predicates are used in combination touniquely describe defect types, in such a manner that a singleclassification code can be assigned to a defect that has differentiatedfrom all other defect types. The classification codes are assigned by anartificial intelligence system that has been programmed by the systemadministrator or engineer, as indicated at 308. Various combinations andpermutations of the N number of predicates are programmed to give ahighly significant statistical confidence that the probability that thedefect, and all other defects of the same type or class, will beassigned the same classification code. This is done by performing abest-fit calculation against all assigned classification codes. If thefit does not meet a pre-assigned quality standards an "unknown" codewill be assigned, which means that the system needs further training forthat particular type of defect. The system shown in FIG. 3, inaccordance with the present invention, stores the classification code inthe ADC database as indicated at 310. In addition, the system of thepresent invention stores the predicate values in the ADC database asindicated at 312. The considerations and benefits of storing thepredicate values in the ADC database are as follows:

1. The number of predicates used by an ADC system is a relatively smalland finite number (typically less than 60) and is conducive to storagein a database without impacting the system storage capacity to a greatextent.

2. The predicates contain all the necessary information about the defectfor determining an assigned classification code making the codificationsystem extremely flexible.

3. If the classification code change or evolves the entire system can beretroactively corrected to reflect the change using the predicatecombinations for each defect to determine how each is affected by thatchange.

4. If it becomes necessary to create a new code to further differentiatebetween defects, past defects can be recodified using the new criteria.

5. If a novel approach describing a class of defects is shown effective,the new system can be implemented without losing past information sincethe previous defects can be reclassified in accordance with the newsystem.

6. If the system administrator is unavailable for training the systemwhen a new, untrained defect is found, the predicate values are storedand are available to develop new parameters for that defect after thefact.

7. If a new classification code system needs to be set-up, such as onethat compares defect information between fabrication areas, it would bepossible to retroactively redefine codes and retrain the entire systemto match one fabrication area's code with another fabrication area'scode exactly such that a true one-to-one comparison can occur.

8. If customized codes are to be used, such as ones that would interesta particular group of scientists or engineers, for example, defects fromdifferent modules, the stored predicate values could be used to generatethe customized codes.

FIG. 3 shows a step, at 314, where the classification code is modifiedby automatically correcting or reclassifying defects once they have beenstored in the database. The re-classification of the classification codeis accomplished by re-examining all the defects stored in the databaseusing the predicate values stored with each defect. The reclassificationis run by the system administrator in cases such as when classificationcodes are added or deleted from the system, if the entire codificationsystem is changed, or if comparing data with another manufacturingcenter using identical coding. The system administrator retrains theartificial intelligence system when the classification code is modified.

FIG. 4 shows a typical automatic defect classification (ADC) system 400.The ADC system has multiple Review & Automatic ClassificationTool/Systems, shown at 402, 404, and 406. The information from each ofthe Review & Automatic Classification Tool/Systems, 402, 404, and 406 issent to a relational database, indicated at 407. The information can beretrieved from the database 407 by multiple Defect Management SystemClient Application (DMSCA) User Workstations, shown at 408, 410, and 412where the data can be to operations such as further processing, furtheranalysis, off-line viewing, and charting. The automatic defectclassification (ADC) reclassification, indicated at 414, communicateswith the database 407 and when the classification code is modified bythe system administrator, indicated at 416, all of the classificationcodes assigned to the defects stored in the database 407 can be changed.Similarly, if the system administrator 416 generates a newclassification code, all of the classification codes assigned to thedefects stored in the database 407 can be changed to comply with the newclassification code.

The benefits provided by the present invention are:

1. It allows all defects in the entire database to be reclassifiedeasily and accurately.

2. It enables the ability for post-training of new defect types orcodes.

3. It improves data consistency and integrity of the database.

4. It eliminates the need for manual reclassification.

5. It maintains maximum flexibility of the ADC codification system.

The foregoing description of the embodiment of the invention has beenpresented for purposes of illustration and description. It is notintended to be exhaustive or to limit the invention to the precise formdisclosed. Obvious modifications or variations are possible in light ofthe above teachings. The embodiment was chosen and described to providethe best illustration of the principles of the invention and itspractical application to thereby enable one of ordinary skill in the artto utilize the invention in various embodiments and with variousmodifications as are suited to the particular use contemplated. All suchmodifications and variations are within the scope of the invention asdetermined by the appended claims when interpreted in accordance withthe breadth to which they are fairly, legally, and equitably entitled.

What is claimed is:
 1. A method of determining classification codes fordefects occurring in semiconductor manufacturing processes and forstoring the information used to determine the classification codes, themethod comprising:sending a production lot of wafers through a firstmanufacturing process; scanning a selected wafer from the production lotto determine if there are defects present on the selected wafer;selecting defects to review; examining an image of each selected defect;assigning a numerical value to each of N elemental descriptor termsdescribing each defect; determining a classification code for eachdefect based upon the numerical values assigned to the N elementaldescriptor terms; storing the classification code and each of thenumerical values assigned to the N elemental descriptor terms in adatabase; and using the stored numerical values assigned to the Nelemental descriptor terms to modify the classification code.
 2. Themethod of claim 1, further comprising:sending the production lot ofwafers through a next manufacturing process; scanning the selected waferto determine if there are additional defects present on the selectedwafer; selecting additional defects to review; examining an image ofeach selected additional defect; assigning a numerical value to each ofthe N elemental descriptor terms describing each defect; determining aclassification code for each additional defect based upon the numericalvalues assigned to the N elemental descriptor terms; and storing theclassification code and each of the numerical values assigned to the Nelemental descriptor terms in the database.
 3. The method of claim 2,further comprising determining a new classification code for all defectsstored in the database.
 4. The method of claim 2, further comprisingdetermining a new classification code.
 5. The method of claim 4, furthercomprising reclassifying all new defects stored in the database inaccordance with the new classification code.